// 引入 命令模式 与 宏命令模式基类
import {
    Command as _Command,
    MacroCommand as _MacroCommand
} from "./libs/command.js";
// 引入装饰包装器基类
import {
    Decorator as _Decorator
} from "./libs/decorator.js";
// 引入 发布订阅模式基类
import {
    EventEmitter as _EventEmitter
} from "./libs/eventEmitter.js";
// 引入 单例模式基类
import {
    Singleton as _Singleton
} from "./libs/singleton.js";
// 引入 模板模式-命令片段对象基类 与 模板模式基类
import {
    StageObjMaker as _StageObjMaker,
    StageController as _StageController
} from "./libs/stageController.js";
// 引入 状态控制器（状态模式基类）
import {
    StateController as _StateController
} from "./libs/stateController.js";
// 引入 策略对象生成器（策略模式基类）
import {
    StrategyMaker as _StrategyMaker
} from "./libs/strategyMaker.js";


// 独立模块导出 命令模式 与 宏命令模式基类
export const Command = _Command;
export const MacroCommand = _MacroCommand;
// 独立模块导出 装饰包装器基类
export const Decorator = _Decorator;
// 独立模块导出 发布订阅模式基类
export const EventEmitter = _EventEmitter;
// 独立模块导出 单例模式基类
export const Singleton = _Singleton;
// 独立模块导出 模板模式-命令片段对象基类 与 模板模式基类
export const StageObjMaker = _StageObjMaker;
export const StageController = _StageController;
// 独立模块导出 状态模式基类
export const StateController = _StateController;
// 独立模块导出 策略模式基类
export const StrategyMaker = _StrategyMaker;

export default {
    // 命令模式 与 宏命令模式基类
    Command,
    MacroCommand,
    // 装饰包装器基类
    Decorator,
    // 装饰包装器基类
    EventEmitter,
    // 单例模式基类
    Singleton,
    // 模板模式-命令片段对象基类 与 模板模式基类
    StageObjMaker,
    StageController,
    // 状态模式基类
    StateController,
    // 策略模式基类
    StrategyMaker
}
